The present application is concerned with audio coding, and especially with noise filling in connection with audio coding.
In transform coding it is often recognized (compare [1], [2], [3]) that quantizing parts of a spectrum to zeros leads to a perceptual degradation. Such parts quantized to zero are called spectrum holes. A solution for this problem presented in [1], [2], [3] and [4] is to replace zero-quantized spectral lines with noise. Sometimes, the insertion of noise is avoided below a certain frequency. The starting frequency for noise filling is fixed, but different between the known technology.
Sometimes, FDNS (Frequency Domain Noise Shaping) is used for shaping the spectrum (including the inserted noise) and for the control of the quantization noise, as in USAC (compare [4]). FDNS is performed using the magnitude response of the LPC filter. The LPC filter coefficients are calculated using the pre-emphasized input signal.
It was noted in [1] that adding noise in the immediate neighborhood of a tonal component leads to a degradation, and accordingly, just as in [5] only long runs of zeros are filled with noise to avoid concealing non-zero quantized values by the injected surrounding noise.
In [3] it is noted that there is a problem of a compromise between the granularity of the noise filling and the size of the necessitated side information. In [1], [2], [3] and [5] one noise filling parameter per complete spectrum is transmitted. The inserted noise is spectrally shaped using LPC as in [2] or using scale factors as in [3]. It is described in [3] how to adapt scale factors to a noise filling with one noise filling level for the whole spectrum. In [3], the scale factors for bands that are completely quantized to zero are modified to avoid spectral holes and to have a correct noise level.
Even though the solutions in [1] and [5] avoid a degradation of tonal components in that they suggest not filling small spectrum holes, there is still a need to further improve the quality of an audio signal coded using noise filling, especially at very low bit-rates.